package itheima.zuoye.Test5;

import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;

public class test {
    public static void main(String[] args) {

        Set<String> set = new HashSet<>();
// (2)删除集合中不满足身份证号码的数据
//
//​    身份证要求：
//
//​	-
//
//   (3)然后利用迭代器遍历集合元素并输出
        set.add("3726221951dg010416");
        set.add("37222219700211041X");
        set.add("37242219680208044x");
        set.add("354221968020850444");
        set.add("37262319800904575x");
        set.add("3722231af303a99673");
        set.add("3711fdg98603040033");
        set.add("373522198511190042");
        set.add("3755sdf1991112998X");

        Iterator<String> it = set.iterator();
        while (it.hasNext()){

//            长度必须18位
//
//- 数字0不能开头
//
//  - 除了最后一位，中间不允许有字母
//
//  - 最后一位可以是数字或者Xx
            //用正则校验

            String idCard = it.next();
            if (idCard.matches("^[1-9]\\d{5}(18|19|([23]\\d))\\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\\d{3}[0-9Xx]$")){
            }else {
                it.remove();
            }
        }

        set.forEach(System.out::println);

    }

}
